package com.ouc.common.constant;

public enum VariableName {
  /**
   * LON代表经度变量名的取值集合
   * LAT代表纬度变量名的取值集合
   * LEVEL代表层数变量名的取值集合
   * TEMP代表温度变量名的取值集合
   * SALT代表盐度变量名的取值集合
   * WAVEMEANPERIOD代表波周期
   * WAVEHEIGHT代表波高
   * WAVEDIRECTION代表波向
   * SSH代表海面高度
   * TEMPERATURE代表气温
   * PRESURE代表压力
   * HUMIDITY代表湿度
   * GEOPOTENTIAL代表重力势
   * DENS代表密度
   * RADIUS代表半径
   * SLA代表海平面高度异常
   * BOTTOMT代表海底温度
   * MLOTST代表海洋混合层厚度
   * SICONC代表冰浓度
   * SITHIC代表海冰厚度
   * currentU代表海洋流场x分量
   * currentV代表海洋流场y分量
   * currentA代表海洋流场x轴正方向角度
   * currentValue代表海洋流场值
   * windU代表风场仅x分量
   * windV代表风场仅y分量
   * windA代表风场x轴正方向角度
   * windValue代表风场值
   * waveU代表浪场仅x分量
   * waveV代表浪场仅y分量
   * waveA代表浪场x轴正方向角度
   * waveValue代表浪场值
   * <p>
   * USI代表海冰u速度
   * VSI代表海冰v速度
   * EFFECTIVELAT用于pet画轮廓线的
   * EFFECTIVELON用于pet画轮廓线的
   */
  LON(new String[]{"lon", "longitude", "xt_ocean","lon_bnds"}),
  LAT(new String[]{"lat", "latitude", "yt_ocean","lat_bnds"}),
  LEVEL(new String[]{"depth", "lev", "level", "lev1"}),
  TEMP(new String[]{"temp", "tt", "sst", "温度", "water_temp", "thetao"}),
  SALT(new String[]{"salt", "ss", "sw", "盐度", "salinity", "so"}),
  WAVEMEANPERIOD(new String[]{"mwp", "VTM01_WW"}),
  WAVEHEIGHT(new String[]{"swh", "VHM0"}),
  WAVEDIRECTION(new String[]{"mwd", "VMDR"}),
  SSH(new String[]{"ssh", "surf_el", "eta_t", "zos","sla"}),

  UFLOW(new String[]{"currentU", "uu", "water_u", "uo", "u", "u10","U"}),
  VFLOW(new String[]{"currentV", "vv", "water_v", "vo", "v", "v10","V"}),

  CURRENTA(new String[]{"currentA"}),
  CURRENTVALUE(new String[]{"currentValue"}),

  WINDU(new String[]{"windU", "u10"}),
  WINDV(new String[]{"windV", "v10"}),

  WINDA(new String[]{"windA"}),
  WINDVALUE(new String[]{"windValue"}),

  WAVEU(new String[]{"waveU"}),
  WAVEV(new String[]{"waveV"}),

  WAVEA(new String[]{"waveA"}),
  WAVEVALUE(new String[]{"waveValue"}),

  TEMPERATURE(new String[]{"airTemp", "t", "t2m"}),
  PRESURE(new String[]{"airPressure", "sp"}),
  DENS(new String[]{"dens"}),
  HUMIDITY(new String[]{"wp", "r", "tcwv"}),
  TIME(new String[]{"time"}),
  GEOPOTENTIAL(new String[]{"z"}),
  RADIUS(new String[]{"speed_radius"}),
  SLA(new String[]{"sla"}),
  BOTTOMT(new String[]{"bottomT"}),
  MLOTST(new String[]{"mlotst"}),
  SICONC(new String[]{"siconc"}),
  SITHIC(new String[]{"sithic"}),
  USI(new String[]{"usi"}),
  VSI(new String[]{"vsi"}),

  EFFECTIVELAT(new String[]{"effective_contour_latitude"}),
  EFFECTIVELON(new String[]{"effective_contour_longitude"}),


  FLOW(new String[]{"flow"});


  private String[] variableName;

  VariableName(String[] variableName) {
    this.variableName = variableName;
  }

  public String[] getVariableName() {
    return variableName;
  }
}
